Image processing techniques have classically operated at a pixel level, i.e., on pixel values or intensities. However, operating on low-level pixel data is not practical for applications such as altering the high-level visual appearance of an image. For such tasks, feature-based approaches are more effective. Feature-based techniques include first defining a set of specific features (e.g., edges, patches, SURF, SIFT, etc.) and then defining mathematical models on those features that can be used to analyze and manipulate image content.
Machine learning techniques may be employed to learn either or both features and mathematical model parameters based on pertinent application dependent cost functions. However, such artificial intelligence techniques require an exhaustive training data set that spans the space of all features for a particular application and that is labeled with relevant ground truth data. It has typically been prohibitive to gather exhaustive training data sets for most useful applications. Furthermore, it has been difficult to label images with more complex or sophisticated ground truth data. Thus, the use of machine learning techniques until lately has been limited to basic object recognition or classification applications.
An image processing architecture that overcomes such limitations and effectively leverages machine learning techniques is thus needed and disclosed herein as well as novel image-based applications resulting therefrom.